package com.ncu.cloundeoffice.service;

import com.ncu.cloundeoffice.pojo.Login;
import com.ncu.cloundeoffice.pojo.ResponseResult;
import com.ncu.cloundeoffice.pojo.TAdmin;
import com.ncu.cloundeoffice.pojo.TRole;
import org.springframework.http.HttpRequest;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface TAdminService {


    /**
     * 登录
     * @param username
     * @param password
     * @param request
     * @return
     */
    public ResponseResult login(String username, String password, HttpServletRequest request);


    /**
     * 查出用户相关信息
     * @param username
     * @return
     */
    public TAdmin getAdminByUsername(String username);

    /**
     * 获取所有操作员
     * @param keyword
     * @return
     */
    List<TAdmin> getAllTAdmins(String keyword);

    /**
     * 修改操作员
     * @param tAdmin
     * @return
     */
    ResponseResult updateTAdmin(TAdmin tAdmin);

    /**
     * 删除操作员
     * @param id
     * @return
     */
    ResponseResult deleteTAdmin(int id);

    /**
     * 获取所有的角色
     * @return
     */
    List<TRole> getAllRoles();

    /**
     * 更新操作员角色
     * @param adminId
     * @param rid
     * @return
     */
    ResponseResult updateTAdminRole(int adminId, int[] rids);

    /**
     * 修改用户信息
     * @param tAdmin
     * @return
     */
    int updateTAdminInfo(TAdmin tAdmin);

    /**
     * 修改密码
     * @param oldPassword
     * @param pass
     * @param adminId
     * @return
     */
    ResponseResult updatePass(String oldPassword, String pass, Integer adminId);

    /**
     * 修改头像
     * @param adminId
     * @param storeAddress
     * @return
     */
    int updateUserFace(int adminId, String storeAddress);
}
